package com.situation.service;

import com.github.pagehelper.PageInfo;
import com.situation.pojo.DO.TbDepartment;
import com.situation.pojo.VO.TbDepartmentRenShuVO;
import com.situation.pojo.VO.UserDeanVO;

import java.util.List;

/**
 * @author TaoMinghui
 * @create 2021-12-07 9:09
 */
public interface TbDepartmentService {

    /**
     * 分页查询所有部门  （带部门人数）
     * @return
     */
    PageInfo<TbDepartmentRenShuVO> queryAllTbDepartmentFenYeRenShu(int pageNum, int pageSize);


    /**
     * 查询所有的部门
     * @return
     */
    List<TbDepartment> queryAllDepartment();

    /**
     *
     * @param tbDepartment
     * @return
     */
    int addTbDepartment(TbDepartment tbDepartment);

    /**
     * 通过部门名查找部门id
     * @param name
     * @return
     */
    long findIdByName(String name);

    /**
     * 通过部门id删除部门
     * @param id
     * @return
     */
    int deleteTbDepartmentById(long id);

    /**
     * 更新部门
     * @param tbDepartment
     * @return
     */
    int editTbDepartment(TbDepartment tbDepartment);

    /**
     * 通过模糊部门名称查询部门列表
     * @param moHuName
     * @return
     */
    PageInfo<TbDepartmentRenShuVO> findAllTbDepartmentByMoHuName(int pageNum,int pageSize,String moHuName);

    /**
     * 编辑部门的回填数据
     * @param id
     * @return
     */
    TbDepartment findTbDepartmentById(long id);

//    /**
//     * 查找部门主任,排除掉已经禁用的用户
//     * @return
//     */
//    List<UserDeanVO> findDeanList();
}
